Communications systems may employ echo cancelers to compensate for the effects of echo. These systems may also employ noise suppressors to compensate for the effects of noise in a communication environment.
Echo in a communication system is commonly characterized as the return of a part of the transmitted uplink signal from an end user back to the originator of the transmitted signal after a delay period. The reflection of the transmitted signal may occur due to a number of reasons, such as an impedance mismatch in a four/two wire hybrid, or feedback from acoustic coupling in a telephone, wireless device or hands free speaker phone at the far end. An echo signal corresponding to the delayed transmitted uplink signal is perceived as annoying to the near end user and in some cases can result in a unstable condition known as “howling”.
Echo cancelers may be employed in wireless devices including a hands free speaker phone, such as cellular phones, car phones, two-way radios, car kits for cellular telephones and other suitable devices that can move throughout a geographic area. Additionally, echo cancelers may be employed in wireline devices such as hands free speaker phones, video and audio conference phones and telephones otherwise commonly referred to in the telecommunications industry as plain old telephone system (POTS) devices. Hands free speaker phones typically include a microphone to produce the uplink signal, a speaker to acoustically produce the downlink signal, the echo canceler to cancel the echo signal and a telephone circuit.
Hands free speaker phones may be integrated into an in-vehicle audio system. The vehicle may be an automobile, a boat, an airplane, or any suitable vehicle. The in-vehicle audio system may include an amplifier, speakers and an audio source, such as a tuner module, CD/DVD player, tape player, satellite radio, etc. The in-vehicle audio system may be integrated with a communication apparatus, such as a telematics communication module. For example, the telematics communication module may be a component of a General Motors' OnStar system. The telematics communication module typically collects and disseminates data, such as location information and audio, such as speech.
Echo cancelers are known to attempt to cancel the echo signals produced at the near end when the far end is transmitting by generating echo estimation data corresponding to a portion of an amplified downlink audio signal traveling through the acoustic coupling channel. The echo canceler generates the echo estimation data through the use of an echo canceler adaptive filter. The echo canceler adaptive filter typically employs a finite impulse response (FIR) filter having a set of weighting coefficients to model the acoustic coupling channel between the speaker and the microphone. During the downlink talking mode, the echo canceler adaptive filter attempts to model the acoustic coupling channel by dynamically adapting the weighting coefficients of the finite impulse response filter. Additionally, attenuators in the uplink path and in the downlink path may also be used to mitigate the effects of the echo signal in response to changes in the acoustic coupling channel.
When the near end user is not talking, then the echo canceler adaptive filter coefficient update procedure is typically idle since no downlink signal is present, however the filtering operation may still be active. When both the near end and far end are talking (i.e., double talk mode), the pre-echo canceler uplink microphone signal includes both interfering signals and the echo signal. Again the echo canceler adaptive filter coefficient update procedure is typically idle or significantly slower due to the interference of the noise end signal sources. The interfering signal includes near end speech, various noise components, and distortion. The various noise components may include elements such as non-linearities of the audio system, speaker distortion, and background noise. During double talk, the coefficient update procedure may be idle or altered, but the filtering operation will be active in an attempt to remove the echo component. One problem, however, is that real world effects including limitations in algorithm echo modeling convergence rates and steady state performance, variability in the echo path, mathematical precision limitations of a particular device employed, and non-linear audio system components, among others, all effect the ability of the adaptive echo canceller to remove or reduce the echo component from the transmit signal. As such, advanced modeling techniques, such as multiple cascaded adaptive filters have been explored to further improve the ability of an echo canceller system to minimize modeling errors and the corresponding residual echo.
Noise suppressors may be employed at both the near end and the far end to reduce the noise content of a transmitted voice signal. Noise suppression can be particularly useful when the wireless device is a mobile handset or hands-free telephone operating in the presence of background noise, such as when operating a vehicle. In vehicular environments, background noise may be generated as a result of driving at high speeds or on bumpy roads, operating a blower fan resulting in air turbulence over the microphone, lowering or raising a window resulting in wind rumble, operating windshield wipers, operating turn signals or performing other activities resulting in other sources of noise within the vehicle. While noise suppression techniques may reduce background noise in a static or slowly changing noise environment, both noise suppression and echo cancellation performance can be significantly degraded by the combined generation of noise and echo signals.
FIG. 1 illustrates a prior art cascade echo cancellation and noise suppression module 10 employing noise suppression logic 20, an echo canceler circuit 30, a digital-to-analog converter 40, a speaker 50, an analog-to-digital converter 60, and a microphone 70. The digital-to-analog converter 40 receives downlink data 52, and in response produces a downlink signal 54. The microphone 70 is coupled to the echo canceler circuit 30 via the analog-to-digital converter 60. The analog-to-digital converter 60 receives a pre-echo canceler uplink signal 62 and produces pre-echo canceler uplink data 64. Microphone 70 receives a portion of the downlink signal 54 produced by speaker 50 over an acoustic coupling channel 72 and in response produces the pre-echo canceler uplink signal 62.
Echo canceler circuit 30 includes a first echo canceler adaptive filter 80, first adder logic 82, a second echo canceler adaptive filter 84, and second adder logic 86. The first adder logic 82 receives the pre-echo canceler uplink data 64 and first echo estimation data 88 from the first echo canceler adaptive filter 80 and in response produces first post-echo canceler uplink data 90. The second adder logic 86 receives the first post-echo canceler uplink data 90 and second echo estimation data 92 from the second echo canceler adaptive filter 84 to produce second post-echo canceler uplink data 94. The noise suppression logic 20 receives final post-echo canceler uplink data 96 from the second echo canceler adaptive filter 84 and in response produces final uplink data 98.
Background noise is a persistent and common issue when echo cancellers are operating is harsh environments such as in an automobile environment. Due to the highly linear properties of the first echo canceler adaptive filter 80, background noise present in the pre-echo canceler uplink data 64 will be passed relatively unaffected as part of the first echo canceller uplink data 90 to the second echo canceler adaptive filter 84. However, due to the known suppression (non-linear) characteristics of the second stage cascaded adaptive filter 84, the background noise level or amplitude will be modulated roughly based on the far end voice signal receive activity and due to some subsequent degree of linear echo cancellation in the first echo canceler adaptive filter 80. Consequently, the noise suppression logic 20 receives, as part of the final post-echo canceler uplink data 96, the noise modulation of the background noise primarily due to the second echo canceler adaptive filter 84.
As known in the art, noise suppression algorithms typically employed such as Non-Linear Spectral Subtraction (NLSS) are most effective when the background noise power remains relatively constant or varies slowly (such as with the increase and decrease of vehicle velocity). The noise modulation effect introduced primarily due to the second echo canceler adaptive filter 84 can be quite rapid, and results in poor performance of the noise suppression module 20 such as reduced signal to noise ratio (SNR) as well as annoying noise artifacts introduced by the noise suppression module 20 itself. Therefore, while the multiple filter topology improves echo cancellation in the presence of noise, the far end user will receive the final uplink data 98 containing annoying background noise artifacts.